package main

import "fmt"

/**
1 结构体是用户单独定义的类型，和其它类型进行转换时需要有完全相同的字段(名字个数和类型)
2 结构体进行type重新定义(相当于取别名)，Golang认为是新的数据类型，但是相互间可以强转
**/
type User struct {
	Age int
}

type Person struct {
	Age int
}

func main() {
	var u User
	var p Person
	p.Age = 18
	u = User(p)
	fmt.Printf("%#v \n", u)
	fmt.Printf("%#v \n", p)
}
